<?php /* # # Author: Sebastian Enger, M.Sc. # Date: 4/2/2016 # Website: www.OneTIPP.com # Email: Sebastian.Enger@gmail.com # Topic: Webschnittstelle -> gibt ankommenden Verarbeitungsclients Aufgaben - und Trainingspakete zum verarbeiten # Version: 0.1.4 -> Added ForceUPDATE FileHash # Achtung: Wenn ein Task abgeholt wurde, muss der status noch auf "1"=assigned gesetzt werden */ require_once("/home/www/tech.onetipp.net/library/Config.inc.php"); require_once("/home/www/tech.onetipp.net/library/Functions.inc.php"); $actionTask = $_REQUEST['action']; $actionID = $_REQUEST['aid']; $func = new Functions(); $config = new Config(); header("Content-Type: text/xml; charset=UTF-8"); header("Cache-Control: no-cache, must-revalidate"); //HTTP 1.1 header("Pragma: no-cache"); //HTTP 1.0 header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past /* $a = "343b9d452bbbf3aa9f38340f1f22466ecd760a6e64ae98073daf257af5ffabd52b155f85854250d04a0f3f8f6e06d992f2837a35b20f3c0796266fe8334b429e"; echo $func->GetNewTaskContent($a); exit; */ if (!isset($actionTask) || empty($actionTask)){ // echo "GetIndexPageXML()"; echo $func->GetIndexPageXML(array(),'IndexPage'); exit(0); } if ($actionTask == 'getTask'){ // echo "GetNewTaskContent()"; echo $func->GetNewTaskContent(); exit(0); } /* if ( $actionTask == 'getTask' && (empty($actionID) || !isset($actionID)) ){ // echo "GetNewTaskXML()"; echo $func->GetNewTaskXML(); exit(0); } if ( $actionTask == 'getTask' && (!empty($actionID) || isset($actionID)) ){ // echo "GetNewTaskContent()"; echo $func->GetNewTaskContent($actionID); exit(0); } */ if ( $actionTask == 'statusTask' ){ // echo "GetStatusTaskContent()"; echo $func->GetStatusTaskContent($actionID); exit(0); } if ($_SERVER['REQUEST_METHOD'] == 'POST'){ $ua = $_SERVER['HTTP_USER_AGENT']; $HashActionID = $_POST['aid'];// {HASHID} $Filename = $_POST['aid_filename']; // {HASHID}-{UNIXTIMESTAMP}.tar.bz2 $FileHash = $_POST['aid_filehash']; // MD5_OF({HASHID}-{UNIXTIMESTAMP}.tar.bz2) $suchmuster = '/(\w)-(\w)\.tar\.(bz2|gz)/i'; // only if given input filename is a match of {HASHID}-{UNIXTIMESTAMP}.tar.bz2 then process //if (preg_match($suchmuster, $Filename, $treffer, PREG_OFFSET_CAPTURE, 3)){ $store_path = $config->data_storepath(); $store_path_aid = $store_path."/".$HashActionID; $store_file = $store_path."/".$HashActionID."/".$Filename; if (!file_exists($store_path)) { mkdir($store_path, 0750, true); } if (!file_exists($store_path_aid)) { mkdir($store_path_aid, 0750, true); } //$data = file_get_contents('php://input'); $data = file_get_contents($_FILES['uploadedfile']['tmp_name']); file_put_contents($store_file, $data, LOCK_EX); file_put_contents("/tmp/debug.txt", "UA: $ua / PATH: $store_path / STORE_AID: $store_path_aid / FILE: $store_file / FILEHASH: $FileHash\n", FILE_APPEND); file_put_contents("/tmp/a.txt", $_FILES['uploadedfile']['tmp_name'], FILE_APPEND); return 1; //}; //return 0; exit(0); } exit(0);